package com.cbh.binlog.link;

import com.cbh.binlog.entity.PointCallback;

/**
 * Binlog信息点位存储器, 自行实现存储逻辑
 * 如: 基于Redis, 基于数据库(非同源)
 *
 * @author ChenBiHui
 * @date 2025/1/21
 */
public interface PointStorage {

    /**
     * 保存 Binlog进度点位
     *
     * @param callback 回调对象
     */
    void hold(PointCallback callback);

    /**
     * 获取最后一次的记录 Binlog进度点位
     *
     * @return 进度信息
     */
    PointCallback record();
}
